HEX
Server: LiteSpeed
System: Linux eticaretsrv4.isimtescil.net 3.10.0-962.3.2.lve1.5.26.7.el7.x86_64 #1 SMP Wed Oct 2 07:53:12 EDT 2019 x86_64
User: sioberen (1086)
PHP: 7.3.33
Disabled: NONE
Upload Files
File: //proc/self/root/opt/alt/python37/lib/python3.7/site-packages/clsentry/__init__.py
# coding=utf-8

# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import logging

from clcommon.utils import get_rhn_systemid_value

from clsentry.client import UserlandClient
from clsentry.utils import get_pkg_version

from raven.handlers.logging import SentryHandler
from raven.conf import setup_logging


CLLIB_DSN = 'https://81a8a506e16c4dd690f9ef3e0691813f:086551375de646918b2728aeb73488ba@sentry.cloudlinux.com/31'
__all__ = ('init_sentry_client', 'init_cllib_sentry_client')


def init_sentry_client(project, release, dsn):
    """
    Create generic sentry client and install logging hooks
    """
    sentry = UserlandClient(dsn, release=release)
    # set user context settings, like id or email
    sentry.user_context({
        'id': get_rhn_systemid_value('system_id'),
    })
    # and also set project name
    sentry.tags['Project'] = project

    # setup handler, so we can track logging.error's
    handler = SentryHandler(sentry, level=logging.ERROR)
    setup_logging(handler)


def init_cllib_sentry_client():
    """
    Create sentry client for cllib package
    and install logging hooks
    """
    return init_sentry_client(
        'python-cllib', release=get_pkg_version('alt-python27-cllib'), dsn=CLLIB_DSN)